﻿//#ZEEVIN#未通过验证的字段数
var validator_status = 0;
$(document).ready(function(){

	/*-------------#ZEEVIN#设置js正则表达式匹配规则,可以随意扩展,idcard,phone,num,required,alpha是验证规则名称，通过在相应的input字段添加validator属性生效。---------------*/
	/*-------------#ZEEVIN#比如validator='alpha',即为验证是否是字母，多个规则用'|'连接，比如：validator="required|alpha|upcase"---------------*/
	/*-------------#ZEEVIN#表示该字段不能为空、必须是字母，并且首字母大写。---------------*/
	var validate = new Array();
		validate['idcard']= new Array(/^(\d{14}|\d{17})(\d|[Xx])$/,'格式不正确');
		validate['phone']= new Array(/(^1\d{10}$)|(^\d{7,8}$)/,'电话号码格式不对');
		validate['num']= new Array(/^\d+$/,'只能是数字');
		validate['required']= new Array(/^(.|\n)+$/,'不能为空');
		validate['alpha']= new Array(/^[a-zA-Z]+$/,'只能是字母');
		validate['upcase']= new Array(/^[A-Z]{1}/,'第一个字母要大写');
		validate['url']= new Array(/^(http|https):\/\/.*\..*$/,'格式不正确');
		validate['num_alpha']= new Array(/^[A-Za-z0-9]+$/,'只能是数字和字母');
		validate['min_6']= new Array(/^[A-Za-z0-9!#$%&\'*+\\/=?^_`{|}~-]{6,}$/,'应多于6个字符');
		validate['maxint_3']= new Array(/^[1-9][0-9]{0,2}$/,'应为1～3位正整数');
		validate['words']= new Array(/^(\w|-|\.|\,|\/|\||\||:|#|&|%|\{|\}|\(|\))+$/,'只能是英文、数字、符号');
		validate['email'] = new Array(/^[a-zA-Z0-9!#$%&\'*+\\/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&\'*+\\/=?^_`{|}~-]+)*@(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?\.)+[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$/,'邮箱格式不正确');

	
   /*-------------#ZEEVIN#促发验证规则,这个例子是当验证码框获得焦点时促发。---------------*/
   
		
  $(".validate").blur(function(){
	  /*-------------#ZEEVIN#拆分当前对象使用的验证规则---------------*/
		$tmp = $(this).attr("validator").split("|");
		
		for($v in $tmp){
			if(!validate[$tmp[$v]][0].exec($.trim($(this).val()))) {
				validator_status += 1;
				$(this).next('.warning').remove();
				$(this).after("<p  class='warning false'>× </p>");
				$(this).next('.warning').append(validate[$tmp[$v]][1]);
				break;
			}
			else{
				$(this).next('.warning').remove();
				$(this).after("<p class='warning true'>√  </p>");
				$(this).next('.warning').append('输入正确');
			}
		}
	  
  })
  /*-------------#ZEEVIN#下面为表单提单验证时提供---------------*/
  $('.validate_check').click(function(){
	  validator_status = 0;
	  
	  $(".validate").each(function(){
		  $(this).blur();
	  })
  })
  
  $(".validate").focus(function(){
	validator_status -= 1;
	$(this).next('.warning').remove();
  })
})